﻿
#ifndef ROS2_SUPPORT_BASE_H
#define ROS2_SUPPORT_BASE_H

#include "spadas.h"

namespace spadas
{
    class Ros2FileIOWriteMessageObject : public Object<class Ros2FileIOWriteMessageObjectVars>
    {
    public:
        SPADAS_TYPE("spadas.Ros2FileIOWriteMessageObject");
        Ros2FileIOWriteMessageObject();
        String getFileName();
        void setFileName(String val);
        Double getTime();
        void setTime(Double val);
        String getTopic();
        void setTopic(String val);
        String getDataType();
        void setDataType(String val);
        Binary getBinaryData();
        void setBinaryData(Binary val);
        Bool getWriteToGeneration();
        void setWriteToGeneration(Bool val);
    };

    struct Ros2FileIOReadMessage
    {
        Double time;
        Binary binaryData;
    };

    class Ros2FileIORegisterReadStreamObject : public Object<class Ros2FileIORegisterReadStreamObjectVars>
    {
    public:
        SPADAS_TYPE("spadas.Ros2FileIORegisterReadStreamObject");
        Ros2FileIORegisterReadStreamObject();
        Bool getReadFromGeneration();
        void setReadFromGeneration(Bool val);
        String getFileName();
        void setFileName(String val);
        String getTopic();
        void setTopic(String val);
        Stream<Ros2FileIOReadMessage> getReadStream();
        void setReadStream(Stream<Ros2FileIOReadMessage> val);
    };
}

#endif